package zhiquan.cai.moRenFangfa;

interface Cat {

    //抽象方法
    void play();

    //静态方法
    static void eat() {
        System.out.println("猫吃鱼");
    }

    //默认方法
    default void run() {
        System.out.println("猫跑");
    }

    //默认方法
    default void climb() {
        System.out.println("猫爬树");
    }
}

//子类白猫实现了猫接口
class WhiteCat implements Cat {

    //实现抽象方法
    @Override
    public void play() {
        System.out.println("白猫玩");
    }

    //也可以重写默认方法
    @Override
    public void run() {
        System.out.println("白猫跑");
    }
}

//主类中调用
public class MoRenFangfa {
    public static void main(String[] args) {
        WhiteCat cat = new WhiteCat();
        Cat.eat(); //调用接口中静态方法
        cat.play(); //调用白猫子类中实现的方法
        cat.run(); //调用白猫子类中重写的方法
        cat.climb(); //调用接口中默认方法
    }
}